package com.aps.server.entity;

import com.aps.common.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * APS订单实体类
 * 对应数据库表 aps_order
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("aps_order")
public class ApsOrder extends BaseEntity {
    /**
     * 主键ID
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;
    
    /**
     * 租户ID
     */
    @TableField("tenant_id")
    private String tenantId;

//    /**
//     * 约束配置id
//     */
//    @TableField("constraint_id")
//    private String constraintId;

    /**
     * aps 内部工单编码
     */
    @TableField("aps_order_code")
    private String apsOrderCode;


    /**
     * 原始订单编码
     */
    @TableField("order_code")
    private String orderCode;
    
    /**
     * 原始产品编码
     */
    @TableField("product_code")
    private String productCode;
    
    /**
     * 订单交付日期
     */
    @TableField("delivery_date")
    private LocalDate deliveryDate;
    
    /**
     * 排期优先级
     */
    @TableField("priority")
    private String priority;
    
    /**
     * 生产数量
     */
    @TableField("quantity")
    private String quantity;

    /**
     * 0待计划 （已选择工单  未生成对应排期计划）
     * 1计划中 （已生成排期计划，未结束）
     * 2完成 （已完成对应工单计划）
     */
    @TableField("status")
    private String status;

}
